export default {
    methods: {
        /**
         * @description 计算合同外工期确认率: durationConfirmRate
         * 1. 合同外工期确认率=（变更后工期:changeAfterDuration -原合同工期:contractDuration）/（实际工期-原合同工期）
         *    实际工期 = 变更后竣工日期 - 实际开工日期: actualStartTime
         * 2. 未竣工的显示“/”
         * 3. 第（2）条的“未竣工”判断条件为：当前时间早于“变更后竣工时间: changeAfterFinishDate”，不根据填写的项目状态判断；
         * 4. 若当前时间晚于或等于“变更后竣工时间”，此公式中的“实际工期”将有值，不为空；
         * 5. 分母为0 的，合同外工期确认率为0
         */
        durationConfirmRateHandler() {
            const { changeAfterFinishDate, changeAfterDuration, actualStartTime, contractDuration } = this.form
            const currentTimeStamp = new Date(this.moment().format('YYYY-MM-DD')).getTime()
            if ((changeAfterFinishDate ?? '') === '') return
            const changeAfterFinishDateTimeStamp = new Date(changeAfterFinishDate).getTime()
            if (currentTimeStamp < changeAfterFinishDateTimeStamp) {
                this.form.durationConfirmRate = '/'
            } else {
                const actualDay = this.moment(changeAfterFinishDate).diff(this.moment(actualStartTime), 'days') // 分母里边的实际工期
                const denominator = actualDay - contractDuration // 分母
                if (denominator <= 0) {
                    this.form.durationConfirmRate = '0.00'
                } else {
                    this.form.durationConfirmRate = ((changeAfterDuration - contractDuration) / denominator).toFixed(2)
                }
            }
        },
        // 专业项目 表单字段 处理
        handlerProSubProjectKey() {
            
        }
    }
}